#ifndef IMAGEINTERPRETHELPER_H
#define IMAGEINTERPRETHELPER_H

#include <string>
#include <vector>

class ImageInterpretHelper
{
public:
    std::string getImageSummary(const std::string &imagePath) const;
    std::vector<std::string> getImageTags(const std::string &imagePath) const;

private:
    std::string postRequest(const std::string &url, const std::string &data) const;
    std::string convertRequestJson(const std::string &base64Image,
                                   const std::string &userQuery,
                                   const std::string &sceneName,
                                   int maxLength = 0,
                                   int labelsNum = 0,
                                   int labelsLength = 0) const;
    std::string extractSummaryFromResponse(const std::string &response) const;
    std::vector<std::string> extractTagsFromResponse(const std::string &response) const;
};

#endif // IMAGEINTERPRETHELPER_H
